import axios from 'axios';
import { ElMessage } from 'element-plus';
axios.defaults.headers['Content-Type'] = 'application/json'
axios.defaults.headers['X-Requested-With'] = 'XMLHttpRequest'
axios.defaults.baseURL = 'https://networkdemoapi.youyacao.com/'
// 前置拦截器（发起请求之前的拦截）
axios.interceptors.request.use(
  config => {
    const token = localStorage.getItem('token')
    config.headers['http-token'] = `${token}`;
    return config;
  },
  error => {
    return Promise.reject(error.response.data);
  },
);

// 后置拦截器（获取到响应时的拦截）
axios.interceptors.response.use(
  response => {
    /**
     * 根据你的项目实际情况来对 response 和 error 做处理
     * 这里对 response 和 error 不做任何处理，直接返回
     */
    return response.data
  },
  error => {
    if (error.request.responseURL.indexOf('401') !== -1) {
      ElMessage.error("您的登录已过期，请重新登录")
      localStorage.removeItem("token")
    } else {
      ElMessage.error(error.response.data?.message || error.response.data)
    }
    return Promise.reject(error.response?.data);
  },
);

// export default axios;